#ifndef CASECONVERT_H
#define CASECONVERT_H

#ifdef SCI_NAMESPACE
namespace Scintilla {
#endif

  enum CaseConversion {
    CaseConversionFold,
    CaseConversionUpper,
    CaseConversionLower
  };

  class ICaseConverter {
    public:
      virtual size_t CaseConvertString( char *converted, size_t sizeConverted, const char *mixed, size_t lenMixed ) = 0;
  };

  ICaseConverter *ConverterFor( enum CaseConversion conversion );


  const char *CaseConvert( int character, enum CaseConversion conversion );




  const int maxExpansionCaseConversion = 3;




  size_t CaseConvertString( char *converted, size_t sizeConverted, const char *mixed, size_t lenMixed, enum CaseConversion conversion );

  #ifdef SCI_NAMESPACE
}
  #endif

#endif
